package com.tjtt.tdm.system.service;

import java.util.Map;

import com.tjtt.tdm.base.PageResult;
import com.tjtt.tdm.exception.ServiceException;
import com.tjtt.tdm.system.bean.LogInfo;
/**
 * 数据库日志管理 业务层接口类
 * @author 曹晓芳
 *
 */
public interface LogService {
//	/**
//	 * 记录日志信息方法 (此记录日志的方法需要在action中调用)
//	 * @param logInfo 日志类 使用时调用this.getLogBase()方法即可
//	 * @param firstLevelModule 系统一级模块名称
//	 * @param secondLevelModule 系统二级模块名称
//	 * @param logEvent 详细描述用户的此次操作更新了那条记录，例如：插入一条用户信息，需要在此处描述插入了那个用户，对其他的模块的影响是什么.
//	 * @author 曹晓芳
//	 * @throws ServiceException 
//	 * @date Aug 29, 2012 1:40:07 PM
//	 */
	public void saveLogInfo(LogInfo logInfo,String firstLevelModule,String secondLevelModule,String logEvent) throws ServiceException;
	
	/**
	 * 记录日志信息方法 (此记录日志的方法需要在action中调用)
	 * @param logInfo 日志类 使用时调用this.getLogBase()方法即可
	 * @param firstLevelModule 系统一级模块名称
	 * @param secondLevelModule 系统二级模块名称
	 * IimitsID 权限id,0,用户角色，1，系统管理员(所有的组织配置和菜单的操作)，2，安全审计员（所有登陆登出），3，安全保密员（针对角色人员的操作）,
	 * @param logEvent 详细描述用户的此次操作更新了那条记录，例如：插入一条用户信息，需要在此处描述插入了那个用户，对其他的模块的影响是什么.
	 * @author 曹晓芳
	 * @throws ServiceException 
	 * @date Aug 29, 2012 1:40:07 PM
	 */
	public void saveLogInfo(LogInfo logInfo,String firstLevelModule,String secondLevelModule,String logEvent,Integer IimitsID) throws ServiceException;
	/**
	 * 记录日志信息方法
	 * @param logInfo 日志类 使用时调用this.getLogBase()方法即可
	 * @param logType 日志类型，例如：新建数据、修改数据、查询数据
	 * @param logEvent 
	 * @param editModule 填写用户操作了那些模块
	 * @param e 错误信息
	 * @author 曹晓芳
	 * @throws ServiceException 
	 * @date Aug 29, 2012 1:40:07 PM
	 */
//	public void saveLogError(LogInfo logInfo,String logType,String logEvent,String editModule,Exception e) throws ServiceException;
	/**
	 * 查询日志信息方法
	 * @author 宿馨月
	 * @throws ServiceException 
	 * @date Sep 03, 2012 11:09:07 PM
	 */    
	public PageResult getLogList(Map filterMap);
    /**
     * 通过id查询日志信息
     * @param LogInfo
     * @return LogInfo
     * @author 宿馨月
     * @date 2012-9-03 下午16:20:15
     */
    public LogInfo findLogById(long logId);
   
    /**
     * 定时删除日志
     * @throws ServiceException
     */
    public void delLogInfo(int sysLogsaveDay) throws ServiceException;
    /**
     * 清除所有日志
     * author:lishu	 2015-5-27
     */
    public void deleteLogAll() ;
}
